Advances in semiconductor processing and logic design have permitted an increase in the amount of logic that may be present on integrated circuits. As a corollary, computer system configurations have evolved from a single or multiple integrated circuits in a system to multiple cores, multiple hardware threads, and multiple logical processors present on individual integrated circuits, as well as other interfaces integrated within such processors. A processor or integrated circuit typically includes one or more semiconductor die, where the die may include any number of cores, hardware threads, logical processors, interfaces, memory, controller hubs, etc. While semiconductor devices include ever-increasing amounts of capabilities and circuitry, design techniques have not kept up. Many portions of an integrated circuit design are implemented manually by designers, which unnecessarily consumes time, resources and leads to potential errors. While some automation via design tools is available, there are limitations.